Merged patch from Arnaud Charlet
authorRaymond Penners <pennersr@src.gnome.org>
Tue, 14 Oct 2003 18:35:43 +0000 (18:35 +0000)
committerRaymond Penners <pennersr@src.gnome.org>
Tue, 14 Oct 2003 18:35:43 +0000 (18:35 +0000)
modules/engines/ms-windows/ChangeLog.old
modules/engines/ms-windows/wimp_style.c
modules/engines/ms-windows/xp_theme.c
modules/engines/ms-windows/xp_theme.h
modules/engines/ms-windows/xp_theme_defs.h

index 7570ea73022764dcf342f9cdd0fa7383c3d9f38b..0ca79a526e4fecbdeada4fee0011c78abac1d2b6 100755 (executable)
@@ -1,3 +1,10 @@
+2003-04-15  Arnaud Charlet  <charlet@ACT-Europe.FR>\r
+\r
+       * src/*.c: The handling of selected radio button was broken.\r
+\r
+       * src/xp_theme_defs.h: When building with gcc, the tree expanders\r
+       were inverted.\r
+\r
 2003-10-08  Raymond Penners  <raymond@dotsphinx.com>\r
 \r
        * === Released 0.5.0 ===\r
index d3e3c6038be4a239a1211f33aa48ac785cfdcb95..c82719ca535aa6e92fa4e98a4651777ccfd26692 100755 (executable)
@@ -766,9 +766,10 @@ draw_option(GtkStyle      *style,
     }
   else
     {
-      if (xp_theme_draw(window,
-                        XP_THEME_ELEMENT_RADIO_BUTTON, style,
-                        x, y, width, height, state, area))
+      if (xp_theme_draw (window, shadow == GTK_SHADOW_IN
+                        ? XP_THEME_ELEMENT_PRESSED_RADIO_BUTTON
+                        : XP_THEME_ELEMENT_RADIO_BUTTON,
+                        style, x, y, width, height, state, area))
         {
         }
       else
@@ -1509,27 +1510,29 @@ draw_handle (GtkStyle        *style,
 {
   XpThemeElement hndl;
 
-  if (!GTK_IS_HANDLE_BOX(widget)) {
-         if (orientation == GTK_ORIENTATION_VERTICAL)
-           hndl = XP_THEME_ELEMENT_GRIPPER_V;
-         else
-           hndl = XP_THEME_ELEMENT_GRIPPER_H;
-
-         if (xp_theme_draw(window, hndl, style, x, y, width, height, state_type, area))
-           {
-             return;
-           }
-       }
+  if (!GTK_IS_HANDLE_BOX (widget))
+    {
+      if (orientation == GTK_ORIENTATION_VERTICAL)
+        hndl = XP_THEME_ELEMENT_GRIPPER_V;
+      else
+        hndl = XP_THEME_ELEMENT_GRIPPER_H;
 
-  if (!GTK_IS_HANDLE_BOX(widget)) {
-    /* grippers are just flat boxes when they're not a toolbar */
-    parent_class->draw_box (style, window, state_type, shadow_type, area, widget,
-                           detail, x, y, width, height);
-  } else {
-    /* TODO: Draw handle boxes as double lines: || */
-    parent_class->draw_handle (style, window, state_type, shadow_type, area, widget,
-                              detail, x, y, width, height, orientation);
-  }
+      if (xp_theme_draw (window, hndl, style, x, y, width, height,
+                         state_type, area))
+        {
+          return;
+        }
+      /* grippers are just flat boxes when they're not a toolbar */
+      parent_class->draw_box (style, window, state_type, shadow_type,
+                              area, widget, detail, x, y, width, height);
+    }
+  else
+    {
+      /* TODO: Draw handle boxes as double lines: || */
+      parent_class->draw_handle (style, window, state_type, shadow_type,
+                                 area, widget, detail, x, y, width, height,
+                                 orientation);
+    }
 }
 
 static void
index 0c64b4daa7fd2982d8fe43e191852cfce211ee19..24239c7f73e49411b5ee4d7b92fb78e4393a071d 100755 (executable)
@@ -77,6 +77,7 @@ static const short element_part_map[]=
   SPNP_UP,
   SPNP_DOWN,
   BP_RADIOBUTTON,
+  BP_RADIOBUTTON,
   TVP_GLYPH,
   TVP_GLYPH,
   PP_CHUNK,
@@ -226,6 +227,7 @@ xp_theme_get_handle_by_element (XpThemeElement element)
     case XP_THEME_ELEMENT_CHECKBOX:
     case XP_THEME_ELEMENT_BUTTON:
     case XP_THEME_ELEMENT_DEFAULT_BUTTON:
+    case XP_THEME_ELEMENT_PRESSED_RADIO_BUTTON:
     case XP_THEME_ELEMENT_RADIO_BUTTON:
       klazz = XP_THEME_CLASS_BUTTON;
       break;
@@ -470,6 +472,7 @@ xp_theme_map_gtk_state (XpThemeElement element, GtkStateType state)
       break;
 
     case XP_THEME_ELEMENT_PRESSED_CHECKBOX:
+    case XP_THEME_ELEMENT_PRESSED_RADIO_BUTTON:
       switch(state)
         {
         case GTK_STATE_SELECTED:
index 554f179c5520283d4cadb7843ed06c43e2759355..cec3d308f24d2aec971acac1328d978ea2ef2727 100755 (executable)
@@ -67,6 +67,7 @@ typedef enum
   XP_THEME_ELEMENT_DEFAULT_BUTTON,\r
   XP_THEME_ELEMENT_SPIN_BUTTON_UP,\r
   XP_THEME_ELEMENT_SPIN_BUTTON_DOWN,\r
+  XP_THEME_ELEMENT_PRESSED_RADIO_BUTTON,\r
   XP_THEME_ELEMENT_RADIO_BUTTON,\r
   XP_THEME_ELEMENT_TREEVIEW_EXPANDER_OPENED,\r
   XP_THEME_ELEMENT_TREEVIEW_EXPANDER_CLOSED,\r
index da7857a0046f464db2d337bfccd2ec6b9f01176c..2372ac25727fbb80e710d1f3f35ef7850737de11 100644 (file)
@@ -138,8 +138,8 @@ typedef HANDLE HTHEME;
 #define UPS_PRESSED 3
 #define UPS_DISABLED 4
 
-#define GLPS_OPENED 1
-#define GLPS_CLOSED 2
+#define GLPS_CLOSED 1
+#define GLPS_OPENED 2
 
 #if UXTHEME_HAS_LINES